# Update segment

Update a segment.

Endpoint: PATCH /entities/segments/{id}
Version: 1.0.0

## Path parameters:

  - `id` (integer, required)
    Segment to update

## Request fields (application/vnd.treasuredata.v1+json):

  - `id` (string)

  - `type` (string)
    Enum: "segment-batch", "segment-realtime", "segment-funnel-stage"

  - `attributes` (object)

  - `attributes.name` (string)

  - `attributes.description` (string)

  - `attributes.rule` (any)

  - `attributes.rule.conditions` (array, required)

  - `attributes.rule.conditions.conditions` (array, required)

  - `attributes.rule.conditions.conditions.exclude` (boolean, required)

  - `attributes.rule.conditions.conditions.id` (string, required)

  - `attributes.rule.conditions.conditions.type` (string, required)
    Enum: "FunnelStageReference", "Reference", "AbTestVariantReference"

  - `attributes.rule.conditions.conditions.includeConvertedCustomers` (boolean, required)

  - `attributes.rule.conditions.conditions.maxGrade` (number, required)

  - `attributes.rule.conditions.conditions.minGrade` (number, required)

  - `attributes.rule.conditions.conditions.leftValue` (object, required)

  - `attributes.rule.conditions.conditions.operator` (any, required)

  - `attributes.rule.conditions.conditions.solutionType` (string, required)
    Enum: "rfm"

  - `attributes.rule.conditions.conditions.arrayMatching` (any, required)

  - `attributes.rule.conditions.conditions.limit` (object)

  - `attributes.rule.conditions.conditions.limit.number` (number, required)

  - `attributes.rule.conditions.conditions.limit.orderColumns` (array)

  - `attributes.rule.conditions.conditions.limit.type` (string, required)
    Enum: "Count", "Percent"

  - `attributes.rule.conditions.description` (string)

  - `attributes.rule.conditions.expr` (string)

  - `attributes.rule.conditions.type` (string, required)
    Enum: "Or", "And", "Composite"

  - `attributes.rule.expr` (string)

  - `attributes.rule.type` (string, required)
    Enum: "Or", "And", "Composite"

  - `attributes.funnel_stage` (object)
    required if type is segment-funnel-stage to create segment as a rule of funnel_stage

  - `attributes.funnel_stage.funnel_id` (integer)

  - `attributes.funnel_stage.stage_id` (integer)

  - `attributes.segmentInsightDashboardId` (integer)

  - `relationships` (object)

  - `relationships.parentFolder` (object)

  - `relationships.parentFolder.data` (object)

  - `relationships.parentFolder.data.id` (string, required)

  - `relationships.parentFolder.data.type` (string, required)
    Enum: "folder-segment"

## Response 200 fields (application/vnd.treasuredata.v1+json):

  - `data` (any, required)

  - `data.id` (string, required)

  - `data.type` (string, required)
    Enum: "segment-batch"

  - `data.attributes` (object, required)

  - `data.attributes.audienceId` (string, required)

  - `data.attributes.name` (string, required)

  - `data.attributes.description` (string, required)

  - `data.attributes.population` (number, required)

  - `data.attributes.numSyndications` (integer)

  - `data.attributes.rule` (any, required)

  - `data.attributes.rule.conditions` (array, required)

  - `data.attributes.rule.conditions.conditions` (array, required)

  - `data.attributes.rule.conditions.description` (string)

  - `data.attributes.rule.conditions.expr` (string)

  - `data.attributes.rule.conditions.type` (string, required)
    Enum: "Or", "And", "Composite"

  - `data.attributes.rule.expr` (string)

  - `data.attributes.rule.limit` (object)

  - `data.attributes.rule.limit.number` (number, required)

  - `data.attributes.rule.limit.orderColumns` (array)

  - `data.attributes.rule.limit.orderColumns.column` (string, required)

  - `data.attributes.rule.limit.orderColumns.order` (string, required)
    Enum: "ascending", "descending"

  - `data.attributes.rule.limit.orderColumns.type` (string, required)
    Enum: "Column"

  - `data.attributes.rule.limit.type` (string, required)
    Enum: "Count", "Percent"

  - `data.attributes.rule.type` (string, required)
    Enum: "Or", "And", "Composite"

  - `data.attributes.createdAt` (string, required)

  - `data.attributes.updatedAt` (string, required)

  - `data.attributes.countPopulation` (boolean)

  - `data.attributes.segmentInsightDashboardId` (integer)

  - `data.attributes.isEmptyRule` (boolean)

  - `data.relationships` (object, required)

  - `data.relationships.parentFolder` (object)

  - `data.relationships.parentFolder.data` (object)

  - `data.relationships.parentFolder.data.id` (string, required)

  - `data.relationships.parentFolder.data.type` (string, required)
    Enum: "folder-segment"

  - `data.relationships.createdBy` (object)

  - `data.relationships.createdBy.data` (object)

  - `data.relationships.createdBy.data.id` (string, required)

  - `data.relationships.createdBy.data.type` (string, required)
    Enum: "user"

  - `included` (array, required)

  - `included.id` (string, required)

  - `included.type` (string, required)
    Enum: "user"

  - `included.attributes` (object, required)

  - `included.attributes.tdUserId` (string, required)

  - `included.attributes.name` (string, required)

